package com.ruoyi.tzai.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 资讯内容对象 tzai_news_content
 * 
 * @author tzai
 * @date 2025-10-27
 */
public class NewsContent extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 内容ID */
    private Long contentId;

    /** 文章ID */
    @Excel(name = "文章ID")
    private Long articleId;

    /** 资讯类型(同步自资讯表) */
    @Excel(name = "资讯类型", readConverterExp = "earnings_call=业绩电话会,official_blog=官方博客,interview=高管/创始人访谈,investment_review=投资点评")
    private String articleType;

    /** 语言(cn中文 en英文) */
    @Excel(name = "语言", readConverterExp = "cn=中文,en=英文")
    private String language;

    /** AI生成的摘要 */
    @Excel(name = "摘要")
    private String summary;

    /** 正文内容 */
    @Excel(name = "正文内容")
    private String content;

    /** 智能断句结果(JSON数组) */
    private String sentences;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    public Long getContentId() {
        return contentId;
    }

    public void setContentId(Long contentId) {
        this.contentId = contentId;
    }

    public Long getArticleId() {
        return articleId;
    }

    public void setArticleId(Long articleId) {
        this.articleId = articleId;
    }

    public String getArticleType() {
        return articleType;
    }

    public void setArticleType(String articleType) {
        this.articleType = articleType;
    }

    public String getLanguage() {
        return language;
    }

    public void setLanguage(String language) {
        this.language = language;
    }

    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getSentences() {
        return sentences;
    }

    public void setSentences(String sentences) {
        this.sentences = sentences;
    }

    @Override
    public Date getCreateTime() {
        return createTime;
    }

    @Override
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("contentId", getContentId())
            .append("articleId", getArticleId())
            .append("articleType", getArticleType())
            .append("language", getLanguage())
            .append("summary", getSummary())
            .append("content", getContent())
            .append("sentences", getSentences())
            .append("createTime", getCreateTime())
            .toString();
    }
}

